#ifndef __SCNS_TCS3472_H__
#define __SCNS_TCS3472_H__

#include "ScnsConfig.h"

#if defined(SCNS_TCS3472_ENABLE)&&SCNS_TCS3472_ENABLE==1

#include "ScnsBspTcs3472.h"

#include "ScnsYing.h"

typedef enum
{
    SCNS_TCS3472_STATUS_OK=SCNS_YING_STATUS_OK,
    SCNS_TCS3472_STATUS_BSP_FAILED=SCNS_YING_STATUS_BSP_FAILED,
    SCNS_TCS3472_STATUS_FAILED=SCNS_YING_STATUS_FAILED,
    SCNS_TCS3472_STATUS_TIME_OUT=SCNS_YING_STATUS_TIME_OUT,
}ScnsTcs3472Status;

typedef struct
{
    uint16 oc;
    uint16 or;
    uint16 og;
    uint16 ob;
    uint8 r;
    uint8 g;
    uint8 b;
    float wr;
    float wg;
    float wb;
}ScnsTcs3472Result;

extern ScnsTcs3472Result scnsTcs3472Result[SCNS_TCS3472_MAX];

extern ScnsTcs3472Status scnsTcs3472Init(ScnsTcs3472Enum tcsN);
extern void scnsTcs3472Interrupt(ScnsTcs3472Enum tcsN);

#endif
#endif
